//using System.Collections;
//using System.Collections.Generic;
//using UnityEngine;

//namespace SimpleFramework
//{
//    public class ResObject
//    {
//        public int refCount;
//        public string assetPath;
//        public Object instance;
//        public IResObjectPool pool;
//        public IAssetHandle assetHandle;

//        public void Destroy(bool delGameObject = false)
//        {
//            if (this.instance != null)
//            {
//                ResBlinder.UnBind(this.instance);
//            }

//            if (this.assetHandle != null)
//            {
//                this.assetHandle.RemoveRef();
//            }

//            this.refCount = 0;
//            this.instance = null;
//            this.assetPath = null;
//            this.pool = null;
//            this.assetHandle = null;
//        }

//        public void AddRef()
//        {
//            this.refCount++;
//        }

//        public void DelRef()
//        {
//            this.refCount--;
//        }

//        public void ClearRef()
//        {
//            this.refCount = 0;
//        }

//        public bool IsGameObject()
//        {
//            return this.instance.GetType() == typeof(GameObject);
//        }
//    }
//}